from app.key_dicts import *

alphabet = ALPHABET + u"卍"

ctc_padding = 2

max_try = 10

train_site = ["合肥", "蚌埠", "阜阳", "芜湖", "黄山", "淮南", "安庆", "宿州", "马鞍山", "淮北", "铜陵", "宣城", "滁州", "亳州", "巢湖", "砀山", "安庆西",
              "合肥西", "明光", "桐城", "宁国", "太湖", "宿松", "广德", "庐江", "天柱山", "固镇", "歙县", "阜南", "凤阳", "水家湖", "绩溪县", "祁门", "颍上",
              "青龙山", "张集", "舒城", "三堂集", "黟县", "休宁", "炉桥", "肥西", "湾沚", "柯坦", "江口集", "岩寺", "临溪", "合肥南", "洋河", "灵璧", "泗县",
              "胡乐", "倒湖", "甲路", "溶口", "霞西", "港口镇", "金字牌", "际坑口", "陶辛", "铜陵东", "蚌埠南", "黄口", "繁昌北", "涡阳", "叶集", "宿州东",
              "定远", "淮南东", "合肥北城", "符离集", "阜阳北", "霍邱", "界首市", "东至", "池州", "六安", "全椒", "肥东", "金寨", "滁州北", "铜陵北", "南陵",
              "无为", "巢湖东", "绩溪北", "旌德", "泾县", "歙县北", "长临河", "黄山北", "繁昌西", "马鞍山东", "弋江", "当涂东", "毫州", "墩义堂", "砀山南",
              "萧县北", "北京", "北京南", "北京西", "北京北", "丰台", "八达岭", "十渡", "北京东", "黄村", "沙河", "怀柔北", "怀柔", "清河", "南口", "昌平",
              "清华园", "石塘路", "密云", "康庄", "顺义", "三家店", "青龙桥", "燕山", "沿河城", "良各庄", "珠窝", "石景山南", "丰台西", "昌平北", "北宅", "双桥",
              "孤山口", "云居寺", "上万", "雁翅", "范各庄", "兵马营", "燕落", "落坡岭", "大灰厂", "平峪", "南观村", "兴寿", "官高", "三合庄", "统军庄", "三堡",
              "张辛", "庙城", "密云北", "平义分", "东园", "下河", "高各庄", "斜河涧", "长辛店", "居庸关", "房山", "军庄", "石楼", "琉璃河", "魏善庄", "安定",
              "通州西", "窦店", "延庆", "西道口", "重庆", "万州", "重庆北", "永川", "北碚", "綦江", "江津", "赶水", "梁平", "荣昌", "重庆南", "三江", "大足",
              "朱杨溪", "白沙", "小南海", "重庆西", "重庆东", "伏牛溪", "铜罐驿", "石门坎", "安富镇", "广兴", "大渡口", "茄子溪", "柏林", "三汇坝", "珞璜", "平等",
              "油溪", "七龙星", "夏坝", "镇紫街", "綦江北", "两河口", "西永", "转关口", "临江场", "茨坝", "岔滩", "石场", "东升坝", "长河碥", "金刚沱", "小南垭",
              "民福寺", "古家沱", "广顺场", "梨树湾", "清平", "双石桥", "回龙坝", "天府北", "磨心坡", "峰高铺", "栏杆滩", "团结村", "黄磏", "碑木镇", "涪陵北",
              "长寿北", "石柱县", "丰都", "洛碛", "璧山", "荣昌北", "大足南", "永川东", "万州北", "梁平南", "垫江", "长寿湖", "复盛", "冯家坝", "磨溪", "下太和",
              "保家楼", "秀山", "潼南", "白涛", "涪陵", "梅江", "高谷", "井口", "中嘴", "涪陵西", "彭水", "酉阳", "长潭沟", "鱼泉", "武隆", "黔江", "长寿",
              "石子山", "鱼嘴", "合川", "蔺市", "福州", "厦门", "泉州", "南平", "武夷山", "三明", "邵武", "龙岩", "漳平", "永安", "建阳", "建瓯", "顺昌",
              "漳州东", "光泽", "沙县", "古田", "永定", "南平南", "闽清", "安溪", "福州南", "尤溪", "上杭", "长汀南", "南安", "来舟", "麦园", "冠豸山", "苏坂",
              "湖头", "雁石", "坂尾", "福德", "宁德", "福鼎", "霞浦", "福安", "连江", "罗源", "太姥山", "泉州东", "莆田", "晋江", "福清", "感德", "古田会址",
              "长汀", "大深", "将乐", "漳浦", "云霄", "诏安", "仙游", "惠安", "武夷山东", "南平北", "古田北", "建瓯西", "闽清北", "武夷山北", "厦门北", "涵江",
              "高崎", "漳州", "南靖", "角美", "龙山镇", "厦门高崎", "永泰", "三明北", "泰宁", "建宁县北", "兰州", "天水", "敦煌", "嘉峪关", "渭南", "张掖",
              "武威", "金昌", "酒泉", "平凉", "陇西", "甘谷", "定西", "武威南", "清水", "低窝铺", "玉门", "山丹", "海石湾", "白银西", "疏勒河", "武山", "景泰",
              "玉门镇", "长城", "永登", "高台", "兰州西", "临泽", "洛门", "崇信", "徽县", "宏庆", "兰州东", "两当", "三阳川", "古浪", "园墩", "李家河",
              "红岘台", "桥西", "土门子", "平凉南", "红砂岘", "狼尾山", "许家台", "渭南镇", "谭家井", "西固城", "上腰墩", "许三湾", "桑园子", "黄羊镇", "新阳镇",
              "打柴沟", "甘草店", "龙沟", "兴泉堡", "镜铁山", "芨岭", "通安驿", "春风", "夏官营", "平原堡", "南河川", "皋兰", "坡底下", "柳园南", "清水北",
              "嘉峪关南", "临泽南", "河口南", "磐安镇", "绿化", "贺家店", "骆驼巷", "李家坪", "龙泉寺", "鸳鸯镇", "陈官营", "庆阳山", "东水峡", "酒泉南", "水源",
              "丰水村", "邵家堂", "长征", "朱家窑", "白银市", "天祝", "吴家川", "东湾", "安口窑", "庙庄", "靖远西", "神峪河", "靖远", "黑冲滩", "照东", "柳园",
              "瓜州", "红柳河", "石峡子", "玉石", "新李", "元龙", "柳沟", "桥湾", "高台南", "张掖西", "长庆桥", "泾川", "中川机场", "兰州新区", "陇南", "岷县",
              "哈达铺", "广州", "深圳", "广州东", "常平", "东莞东", "湛江", "韶关", "惠州", "深圳西", "汕头", "茂名", "佛山", "梅州", "九龙", "茂名东", "龙川",
              "肇庆", "广州北", "兴宁", "石龙", "潮州", "河源", "揭阳", "乐昌", "坪石", "英德", "樟木头", "阳春", "清远", "化州", "平湖", "河唇", "三水",
              "坂田", "廉江", "春湾", "大埔", "华城", "丰顺", "布吉", "遂溪", "沙琅", "和平", "霞洞", "新兴县", "天堂", "塘头厦", "广宁", "南江口", "郁南",
              "丹霞山", "南雄", "始兴", "肇庆东", "三水南", "云浮东", "怀集", "韶关东", "民乐", "深圳北", "佛山西", "徐闻", "湛江西", "横沥", "石滩", "仙村",
              "雷州", "源潭", "广州南", "小榄", "顺德", "容桂", "珠海北", "中山北", "北滘", "新会", "古镇", "江门", "东冲铺", "南朗", "中山", "东升", "信宜",
              "虎门", "英德西", "庆盛", "光明城", "高州", "南头", "深圳东", "珠海", "明珠", "前山", "唐家湾", "广州西", "顺德学院", "碧江", "潮汕", "惠州南",
              "饶平", "汕尾", "深圳坪山", "潮阳", "普宁", "葵潭", "鲘门", "陆丰", "东莞", "惠东", "韶光东", "端州", "鼎湖山", "鼎湖东", "四会", "大旺",
              "云东海", "三水北", "狮山北", "狮山", "福田", "樟木头东", "银瓶", "沥林北", "仲恺", "惠环", "龙丰", "西湖东", "云山", "小金口", "常平东", "茂名西",
              "江门东", "桂林", "南宁", "柳州", "玉林", "贵港", "北海", "百色", "桂林北", "黎塘", "来宾", "金城江", "全州", "陆川", "兴安", "钦州", "鹿寨",
              "凭祥", "融安", "平果", "田东", "防城港", "南丹", "崇左", "永福", "融水", "文地", "田阳", "隆安", "兴业", "田林", "防城", "宁明", "三江县",
              "扶绥", "罗城", "恭城", "三江南", "钟山西", "鹿寨北", "黎塘西", "宾阳", "三岔", "德胜", "绍水", "黄沙河", "百里村", "百浪", "江西村", "大溶江",
              "庙头", "大拟", "小董", "严关乡", "那铺", "叶茂", "流山", "渠旧", "渠黎", "金鸡村", "夏石", "濑湍", "洛东", "凭祥北", "吴圩", "茅岭", "天西",
              "宁村", "洛满", "太阳村", "那罗", "亭亮", "龙伯屯", "马皇", "二塘", "天湖", "宜州", "南宁东", "桂林西", "阳朔", "隆安东", "田东北", "南宁西",
              "德保", "靖西", "博白", "柳江", "康熙岭", "大王滩", "大元", "钦州东", "梧州", "塘库", "寨隆", "北流", "岑溪", "程村", "老堡", "贺州", "钟山",
              "容县", "富川", "全州南", "永福南", "防城港北", "兴安北", "桂平", "平南南", "藤县", "梧州南", "北岗", "合浦", "来宾北", "贵阳", "遵义", "六盘水",
              "凯里", "玉屏", "安顺", "都匀", "兴义", "镇远", "六枝", "贵定", "桐梓", "威舍", "福泉", "红果", "麻尾", "独山", "柏果", "施秉", "草海",
              "水城", "乐坪", "龙里", "水花", "遵义北", "九龙塘", "凉水井", "榕江", "都匀东", "贵定县", "从江", "息烽", "松坎", "红花园", "羊坪", "汇塘河",
              "新场", "葡萄菁", "李家湾", "木竹河", "三元坝", "太白", "梅花山", "松坝", "平关", "凉风垭", "马嘎", "月亮田", "平坝", "清水沟", "贵阳西", "沙沱",
              "火铺", "蒙渡", "娄山关", "蕉溪", "盘关", "关寨", "滥坝", "高峰", "荷马岭", "马场", "黄桶", "天龙", "六个鸡", "树舍", "茨冲", "黄丝", "青溪",
              "麻江", "罗盘地", "半边街", "乐居", "麻芝铺", "七眼桥", "改貌", "老锅厂", "平田", "清泰坡", "花家庄", "两所屯", "宝老山", "普舍寨", "杨柳街", "大土",
              "新平坝", "湖潮", "化处", "三都县", "桐木寨", "高坪铺", "翁通", "双水", "么铺", "大昌", "大石板", "龙田", "老王洞", "那玉", "谷硐", "加劳",
              "大用", "二道岩", "峰洞", "打羊", "大坪", "朱石寨", "墨冲", "星朗", "筹洞", "学庄", "甲堡", "养龙司", "三家寨", "白鸡坡", "扎佐", "发耳",
              "大关冲", "蓬莱", "野马寨", "盘脚营", "都拉营", "大寨", "南白镇", "裕民", "阳朗", "玉舍", "贵阳北", "茅草坪", "董家坪", "南宫山", "乌江", "小寨坝",
              "新萝村", "新坪田", "威箐", "小雨谷", "艾田", "松河", "鲁番", "阁老坝", "久长", "栋青树", "贵定南", "瓦窑田", "上西铺", "册亨", "安龙", "松桃",
              "营街", "雨格", "织金", "普定", "金钟", "李子沟", "石丫口", "迤那", "普安", "龙里北", "开阳", "南江", "铜仁南", "凯里南", "贵定北", "三穗",
              "龙洞堡", "贵阳东", "相思河", "百宜", "洛湾三江", "纳雍", "凯里西", "大方南", "盘州", "安顺西", "平坝南", "关岭", "普安县", "丙午", "川弓", "黄碞",
              "铜仁", "苦李井", "石板哨", "京寨", "观音阁", "乐埠", "桃映", "铜鼓井", "黄平", "元田坝", "深河", "石家庄", "秦皇岛", "唐山", "邯郸", "保定",
              "北戴河", "衡水", "沧州", "邢台", "承德", "廊坊", "张家口", "山海关", "任丘", "辛集", "定州", "滦县", "昌黎", "石门", "宣化", "高碑店",
              "石家庄北", "泊头", "张家口南", "沙城", "深州", "霸州", "涿州", "青县", "东光", "肃宁", "晋州", "四合永", "野三坡", "清河城", "吴桥", "下花园",
              "苟各庄", "隆化", "新乐", "迁安", "徐水", "饶阳", "柴沟堡", "平泉", "涉县", "涞源", "沙河市", "枣强", "燕郊", "藁城", "望都", "古北口", "井陉",
              "正定", "玉田县", "龙华", "滦平", "元氏", "高邑", "卢龙", "兴隆县", "固安", "武安", "文安", "马柳", "大营镇", "定兴", "鹰手营子", "抚宁",
              "前磨头", "磁山", "官厅", "朝阳地", "纪家沟", "白涧", "南宫东", "三河县", "下板城", "清风店", "马头", "磁县", "幽州", "九龙山", "沙岭子", "紫荆关",
              "虎什哈", "井店", "旧庄窝", "午汲", "丰南", "阳邑", "承德东", "王安镇", "上板城", "田庄", "磁西", "金沟屯", "艾河", "康城", "上安", "东戍",
              "浮图峪", "新固镇", "南城司", "临洺关", "塔崖驿", "包官营", "北马圈子", "隆尧县", "狼山", "孔家庄", "张三营", "奇峰塔", "王瞳", "辛庄子", "下台子",
              "完县", "新杖子", "小寺沟", "漕河", "腰栈", "什里店", "临水", "石郎庄", "滦县东", "八里庄", "小西庄", "郭磊庄", "南大庙", "东花园", "二道沟门",
              "梁底下", "承安铺", "新保安", "银镇", "王家井", "偏店", "潘家店", "清凉店", "张百湾", "上板城南", "六道河子", "超梁沟", "西八里", "豆庄", "富庄子",
              "窑上", "悬钟", "井南", "徘徊北", "新安村", "土木", "福山寺", "黄家店", "岩峰", "河洛营", "南峪", "邢家堡", "狼窝铺", "前苇塘", "大杖子", "福山口",
              "新坡", "广德号", "庙宫", "双望", "汤头沟", "于家庄", "义井", "和村", "良村", "沙子河", "西湾堡", "大盘石", "贡家台", "马铺营", "东大坝", "北屯",
              "窦妪", "寨西店", "下安", "头泉", "牛叫河", "南张村", "柳辛庄", "彭城", "杨各庄", "板城", "榆树沟", "林村", "唐山北", "滦河", "杨树岭", "临西",
              "平坊", "落垡", "五道河", "松树台", "东戌", "芦家庄", "沙坨子", "龙家营", "沧州西", "廊坊北", "西大庙", "流水沟", "滦河沿", "南湾子", "白旗",
              "洞庙河", "韩麻营", "猴山", "甲山", "闹海营", "曹妃甸", "曹妃甸南", "上谷", "保定东", "邯郸东", "邢台东", "定州东", "涿州东", "高碑店东", "高邑西",
              "保定西", "正定机场", "东戴河", "白洋淀", "白沟", "霸州西", "胜芳", "孟庄", "临城", "黄梁梦", "大官亭", "郑州", "洛阳", "新乡", "南阳", "商丘",
              "安阳", "信阳", "开封", "许昌", "漯河", "焦作", "驻马店", "三门峡", "平顶山", "潢川", "邓州", "鹤壁", "巩义", "济源", "三门峡西", "宝丰", "灵宝",
              "兰考", "商丘南", "民权", "偃师", "周口", "义马", "渑池", "鲁山", "西平", "汝州", "洛阳东", "新县", "南召", "新郑", "月山", "台前", "汤阴",
              "关林", "淮滨", "长葛", "卫辉", "上街", "长垣", "明港", "淇县", "确山", "遂平", "新安县", "郑州东", "临颍", "获嘉", "修武", "沁阳", "武陟",
              "封丘", "中牟", "草店", "伊川", "洛阳北", "延津", "穰东", "汝阳", "白合", "皇路店", "留庄", "宋城路", "贾鲁河", "绿博园", "运粮河", "董庄",
              "孟津", "戎庄", "庙下", "满村", "构林", "夏集", "交界", "九里山", "临汝镇", "北召店", "蒲山店", "韩堂", "滑县南", "待王", "闻庄", "龙门南",
              "王堂", "王庄", "刁河店", "文庄村", "商酒务", "小屯街", "轵城", "后寨", "虞城县", "盘古寺", "宁陵县", "夏邑县", "镇平", "大河坝", "平顶山西", "莲东",
              "捏掌", "七里河", "沁河北", "洛阳龙门", "三门峡南", "渑池南", "巩义南", "灵宝西", "焦作东", "固始", "信阳东", "许昌东", "驻马店西", "漯河西", "明港东",
              "鹤壁东", "新乡东", "安阳东", "曲周县", "沈丘", "项城", "洛阳南", "修武西", "黄河景区", "南阳寨", "郑州西", "光山", "新郑机场", "濮阳", "南曹",
              "永城北", "兰考南", "开封北", "民权北", "息县", "罗山", "唐河", "桐柏", "内乡", "商城", "西峡", "哈尔滨", "齐齐哈尔", "佳木斯", "牡丹江", "大庆",
              "鸡西", "绥化", "哈尔滨东", "让湖路", "北安", "讷河", "双鸭山", "嫩江", "南岔", "鹤岗", "肇东", "铁力", "密山", "阿城", "安达", "七台河", "东海",
              "伊春", "富拉尔基", "虎林", "尚志", "泰来", "富裕", "双城堡", "龙江", "庆安", "绥芬河", "呼兰", "海伦", "林口", "五常", "泰康", "碾子山", "海林",
              "龙凤", "东方红", "富锦", "兴隆镇", "克山", "塔河", "卧里屯", "亚布力", "绥棱", "拉哈", "龙镇", "依安", "汤原", "朗乡", "银浪", "帽儿山", "苇河",
              "前进镇", "六合", "新肇", "浩良河", "建三江", "哈尔滨西", "勃利", "平山", "江桥", "带岭", "玉泉", "漠河县", "鸡东", "林源", "香兰", "大兴",
              "赵光", "乌伊岭", "桦南", "香坊", "克东", "昂昂溪", "东京城", "通北", "一面坡", "滨江", "古莲", "福利屯", "榆树屯", "新林", "八面通", "宁安",
              "韩家园", "迎春", "鹤北", "老莱", "穆棱", "太阳升", "宝泉岭", "对青山", "西林", "桃山", "宋", "康金井", "鹿道", "山河屯", "新华屯", "红兴隆",
              "横道河子", "新华", "新青", "兴凯", "鹤山", "汤旺河", "林海", "劲涛", "十八站", "卫星", "碧水", "翠岗", "新彦", "新友谊", "沾河", "五营", "聂河",
              "五家", "友好", "金山屯", "大扬气", "弯道", "晨明", "团结", "海北", "图强", "伊拉哈", "永安乡", "拉林", "碧州", "平房", "太阳沟", "孙家", "塔源",
              "青龙", "周家", "山市", "呼中", "石人城", "双丰", "中和", "塔尔根", "裴德", "四方台", "大乌苏", "新天", "鲁河", "汤池", "古城镇", "豆海", "黑岗",
              "平洋", "梨树镇", "东佳木斯", "柴河", "白山乡", "西麻山", "哈川", "二道湾", "烟筒屯", "高头", "东津", "大民屯", "新高峰", "牛家", "笔架山", "群力",
              "恒地营", "双子河", "虎尔虎拉", "塔哈", "爱河", "永庆", "新泉", "新香坊", "八方", "冯屯", "二龙山屯", "古城", "独立屯", "红山", "克利", "盘古",
              "三间房", "美溪", "王兆屯", "东门", "呼源", "小岭", "桦林", "鹤立", "张维屯", "他石海", "红旗营", "伊林", "光明", "壮志", "向阳川", "杜家",
              "劳动屯", "青山", "乌兰昭", "喇嘛甸", "秦家", "革志", "白奎堡", "黑台", "朱家沟", "立志", "石头", "杨岗", "向阳", "神树", "安家", "莲江口",
              "长发屯", "创业村", "青水山", "马莲河", "换新天", "亚沟", "富海", "亚河", "滴道", "斗沟子", "里木店", "羊草", "绣峰", "磨刀石", "红星", "沈家",
              "佛岭", "向阳村", "倭肯", "徐家", "凯北", "楚山", "宝林", "成高子", "望江", "圣浪", "二井", "背荫河", "八虎力", "王岗", "石磷", "绿潭", "柳树",
              "查班河", "吉新河", "五林", "密山西", "代马沟", "树林", "小榆树", "下城子", "兴无", "苔青", "石长", "温春", "健民", "兰岭", "大观岭", "宏图",
              "大西", "庙台子", "尚家", "柳毛", "麻山", "敖头", "杨家", "连珠山", "虎山", "孟家岗", "半截河", "新松浦", "万发屯", "双龙山", "四马架", "奎山",
              "北林", "申家店", "沙园", "李家", "丰乐镇", "八村", "永胜", "威岭", "互助", "杏树", "万乐", "太平镇", "扎音河", "姜家", "峻德", "青岭子", "兰岗",
              "瓦拉干", "通天屯", "杨木", "王杨", "拉古", "海浪", "东边井", "小白", "松青", "阎家", "兴福", "全胜", "界山", "高老", "龙船", "卡路屯", "开道",
              "治山", "虎峰", "兴莲", "绥阳", "六合镇", "松北", "绥西", "太岭", "锦河", "马桥河", "襄河", "孙吴", "宽沟", "红房子", "黑河", "西岗子", "辰清",
              "双城北", "寒葱沟", "东二道河", "抚远", "洪河", "前锋", "二道桥", "大庆西", "宝清", "双柳", "大庆东", "齐齐哈尔南", "哈尔滨北", "东岗", "蒙克山",
              "同江", "亚布力南", "兰棱", "高家", "五大连池", "兴隆店", "老松岭", "松岭", "漠河", "阿木尔", "长汀镇", "升昌", "九营", "龙门河", "潮水", "九三",
              "黄花", "武汉", "武昌", "汉口", "襄樊", "宜昌", "十堰", "荆门", "麻城", "孝感", "随州", "黄州", "咸宁", "赤壁", "鄂州", "广水", "枣阳",
              "蕲春", "浠水", "当阳", "武穴", "黄石", "安陆", "谷城", "松滋", "阳新", "武当山", "黄梅", "六里坪", "云梦", "枝城", "宜城", "长江埠", "红安",
              "胡家营", "襄樊北", "黄陂", "老河口东", "黄龙", "马棚", "鲍峡", "太平店", "丁家营", "孔垄", "陈家湖", "耿坡", "将军河", "蔡山", "小花果", "小池口",
              "栗木", "郜营", "宜昌东", "白沙铺", "钟祥", "京山", "华容", "应城", "利川", "建始", "巴东", "襄阳", "荆州", "天门南", "潜江", "枝江北", "汉川",
              "仙桃西", "襄阳东", "孝感北", "长阳", "咸宁南", "汤逊湖", "咸宁东", "纸坊东", "贺胜桥东", "横沟桥东", "山坡东", "土地堂东", "乌龙泉南", "葛店南", "黄冈",
              "黄冈东", "大冶北", "黄石北", "黄冈西", "花湖", "花山南", "左岭", "鄂州东", "华容东", "华容南", "武汉西", "武汉南", "孝感东", "天河机场", "槐荫",
              "金银潭", "毛陈", "闵集", "后湖", "天河街", "咸宁北", "赤壁北", "恩施", "黄石东", "麻城北", "花园", "红安西", "白海", "天门", "花果", "长沙",
              "株洲", "衡阳", "怀化", "岳阳", "张家界", "郴州", "吉首", "湘潭", "常德", "娄底", "永州", "邵阳", "益阳", "耒阳", "新化", "衡山", "醴陵",
              "湘乡", "东安", "祁东", "汨罗", "溆浦", "慈利", "冷水江东", "涟源", "临澧", "祁阳", "邵东", "靖州", "澧县", "临湘", "石门县", "辰溪", "韶山",
              "麻阳", "安化", "汉寿", "会同", "猛洞河", "宁乡", "通道", "低庄", "古丈", "牙屯堡", "烟溪", "马田墟", "塘豹", "石门县北", "江市", "醴陵东",
              "怀化南", "娄底南", "邵阳北", "新化南", "溆浦南", "韶山南", "芷江", "紫溪", "黄阳司", "蓝家村", "井头墟", "长沙南", "岳阳东", "祁东北", "株洲南",
              "洞井", "新晃", "茶陵", "攸县", "锦和", "郴州西", "株洲西", "衡山西", "汨罗东", "耒阳西", "永和", "衡阳东", "路口铺", "江华", "道州", "零陵",
              "江永", "双牌", "上关", "芙蓉南", "暮云", "树木岭", "香樟路", "湘府路", "九郎山", "田心东", "板塘", "荷塘", "昭山", "祁阳北", "东安东", "理家坪",
              "茶陵南", "安仁", "炎陵", "攸县南", "新晃西", "双峰北", "湘潭北", "长春", "吉林", "四平", "通化", "延吉", "白城", "图们", "梅河口", "松原",
              "公主岭", "辽源", "敦化", "德惠", "扶余", "白河", "朝阳镇", "磐石", "安图", "蛟河", "九台", "太平川", "洮南", "郑家屯", "柳河", "大安北", "镇赉",
              "开通", "榆树", "松江河", "东丰", "舒兰", "农安", "泉阳", "集安", "临江", "大安", "山城镇", "烟筒山", "明城", "汪清", "白石山", "陶赖昭", "金山",
              "露水河", "朝阳川", "江源", "黄泥河", "仙人桥", "郭家店", "三源浦", "口前", "大石头", "范家屯", "永宁", "平台", "湾沟", "平安", "天桥岭", "长春南",
              "黑水", "松树镇", "丰库", "乾安", "安广", "西阳", "长山屯", "二道河", "春阳", "哈拉海", "吉舒", "大屯", "茂林", "大兴沟", "镇西", "石岭", "东山",
              "王府", "大川", "荒山", "庙岭", "开安", "姚家", "营城", "工农湖", "大东", "苇塘", "丰广", "松原北", "弓棚子", "珲春", "拉法", "长胜", "东通化",
              "达家沟", "江北", "天岗", "曲水", "黑山头", "哈福", "谢家", "渭津", "东富", "建设", "溪洞", "莲河", "柳树河", "太平岭", "干沟", "新庙", "海坨子",
              "平岗", "前河", "大桥", "振德", "庆丰", "果松", "通沟", "小姑家", "咋子", "苇子沟", "大姑家", "白泉", "知字井", "八宝", "驼腰岭", "署字井",
              "双河镇", "龙潭山", "到保", "江密峰", "五道沟", "黄柏", "米沙子", "金珠", "小合隆", "海龙", "两家", "二密河", "巨宝", "取柴河", "六道河", "菇园",
              "五棵树", "阳岔", "亚复", "长岗", "石岘", "三十三号", "郑家堡", "官字井", "舍力", "黄松甸", "布海", "磨盘山", "秋梨沟", "棋盘", "珍珠门", "道清",
              "通途", "西川", "陶家屯", "浑江西", "南沟", "榆树川", "前榆", "茶条沟", "老爷岭", "威虎岭", "五家户", "砬子河", "铁厂", "大兴镇", "老头沟", "平东",
              "朱三家", "天德", "柴岗", "亮兵台", "葆园", "马尾山", "大口钦", "水曲柳", "石人", "靠山屯", "遥林", "吉林北", "哈玛", "鸭园", "老营", "华家",
              "一间堡", "前窑", "刘家店", "大梨树", "七道河", "闵家屯", "哈尔巴岭", "永红", "姚家坨子", "平安镇", "水洞", "小南", "来福", "七家子", "铜佛寺",
              "大阳岔", "三井子", "珠宝岗", "林子头", "小山", "上营", "石湖", "花山", "老岭", "板石河", "影壁山", "火炬沟", "二营子", "沃皮", "白山市", "图们北",
              "抚松", "三道湖", "靖宇", "双吉", "通化县", "安图西", "延吉西", "蛟河西", "兰家屯", "西阳岔", "蔡家沟", "坦途", "务本", "马相屯", "吉林西", "山场屯",
              "兴隆山", "卡伦", "龙家堡", "土们岭", "桦皮厂", "孤店子", "新九站", "和龙", "东丰北", "左家", "松江镇", "青沟子", "三队", "团林", "万隆", "长基",
              "氡泉", "二岔", "荒沟西", "黄泥崴子", "十里坪", "双安屯", "枕头峰", "龙井", "龙水坪", "八家子", "龙嘉", "新立镇", "谢家镇", "长春西", "四平东",
              "公主岭南", "扶余北", "德惠西", "九台南", "南京", "苏州", "徐州", "无锡", "常州", "镇江", "扬州", "昆山", "连云港", "南京西", "丹阳", "新沂",
              "连云港东", "南京南", "仪征", "东海县", "戚墅堰", "墟沟", "龙潭", "沛县", "硕放", "沛屯", "泗阳", "泗洪", "苏州西", "黄集", "张寨", "郑集",
              "崔寨", "沙塘", "刘集", "石湖村", "弯集", "无锡新区", "常州北", "苏州园区", "丹阳北", "镇江南", "如皋", "沭阳", "姜堰", "泰州", "南通", "江都",
              "海安县", "盐城", "淮安", "阜宁", "东台", "邳州", "建湖", "淮安南", "昆山南", "惠山", "仙林", "安亭北", "宝华山", "丹徒", "阳澄湖", "苏州新区",
              "南翔北", "花桥", "中华门", "徐州东", "苏州北", "无锡东", "江宁西", "江阴", "苏州东", "无锡南", "宜兴", "溧阳", "江宁", "溧水", "句容西", "瓦屋山",
              "张家港", "宿迁", "栟茶", "如东", "南昌", "九江", "赣州", "鹰潭", "吉安", "上饶", "萍乡", "景德镇", "向塘", "新余", "宜春", "樟树", "井冈山",
              "玉山", "贵溪", "东乡", "丰城", "兴国", "龙南", "新干", "进贤", "德安", "信丰", "定南", "分宜", "万年", "永修", "樟树东", "弋阳东", "横峰",
              "资溪", "南康", "乐平市", "余江", "江边村", "崇仁", "芦溪", "丰城南", "南昌西", "抚州北", "峡江", "吉水", "临川", "共青城", "萍乡北", "高安",
              "赣州东", "彬江", "莲塘", "高兴", "浮梁", "鹰潭北", "进贤南", "玉山南", "抚州东", "大余", "大岗", "罗坊", "硬石岭", "泉江", "三江镇", "福港",
              "白源", "峙滩", "军山", "杨家岭", "新祺周", "乐化", "马回岭", "画桥", "鲇鱼山", "甘棠", "塔前", "瑞昌", "庐山", "泰和", "于都", "沙村", "西江",
              "醪桥", "横岗", "吉安南", "南塘镇", "八都", "瑞金", "张巷", "湖口", "彭泽", "潭岗", "抚州", "南城", "南丰", "龙市", "营盘上", "宜春西", "弋阳",
              "新余北", "婺源", "德兴", "五府山", "会昌北", "沈阳", "大连", "沈阳北", "锦州", "鞍山", "丹东", "葫芦岛", "阜新", "辽阳", "盘锦", "本溪", "抚顺",
              "兴城", "铁岭", "大石桥", "海城", "沟帮子", "朝阳", "瓦房店", "开原", "营口", "大虎山", "绥中", "凌源", "熊岳城", "叶柏寿", "昌图", "金州",
              "沈阳南", "普兰店", "新民", "盖州", "台安", "清原", "锦州南", "凤凰城", "义县", "西柳", "盘锦北", "抚顺城", "彰武", "新立屯", "北票南", "葫芦岛北",
              "灯塔", "庄河", "公营子", "惠州西", "通远堡", "阿金", "南杂木", "辽中", "八面城", "旅顺", "南台", "清河门", "松树", "草河口", "安平", "许家屯",
              "锦县", "苍石", "三十里堡", "威宁", "周水子", "虎石台", "新城子", "沈阳西", "绥中北", "灵山", "南芬", "沈阳东", "章党", "首山", "小市", "城子坦",
              "福金", "沙海", "五龙背", "南口前", "草市", "歪头山", "马三家", "大平房", "三十家", "大官屯", "新邱", "北台", "皮口", "榆树台", "石门岭", "八角台",
              "新开", "本溪湖", "北三家", "石桥子", "孤家子", "前甸", "大成", "金沟", "鸡冠山", "张台子", "桥头", "沙河口", "老边", "金坑", "营盘", "林盛堡",
              "阿尔乡", "上园", "深井子", "石山", "新台子", "前卫", "大巴", "登沙河", "凌源东", "长山堡", "铁背山", "杏树屯", "瓢儿屯", "渤海", "连山关",
              "姚千户屯", "兴隆河", "下马塘", "乱石山", "明阳", "水帘洞", "能家", "火连寨", "刘家村", "皇姑屯", "牧城子", "寒岭", "塔山", "魏杖子", "大营子",
              "长岭子", "女儿河", "章古台", "祁家堡", "周家屯", "小平房", "得胜台", "蛤蟆塘", "刘家河", "小屯", "水泉", "广宁寺", "亮甲店", "桃园", "太子河",
              "吴家屯", "夹心子", "南关岭", "英额门", "新寒岭", "新立", "金山湾", "大郑", "营城子", "拉拉屯", "高桥镇", "革镇堡", "一面山", "沙后所", "林家台",
              "张家堡", "牛心台", "高阳镇", "老古沟", "汤山城", "高家岁", "偏岭", "牛庄", "陈相屯", "刀尔登", "南桥", "南汤", "侯杖子", "柳树屯", "郭家屯", "罗家",
              "杨杖子", "泉水", "金杖子", "钟杖子", "刘屯", "东沟门", "四道沟", "中兴", "河汤沟", "红石", "建昌", "串子沟", "杨树湾", "田师府", "大堡", "长虹",
              "宽甸", "坦甸", "灌水", "铁佛寺", "边沟", "佟家", "庙阳", "天桥", "永甸", "抚顺北", "绕阳河", "励家", "大红旗", "李石寨", "高山子", "青堆子",
              "秋木庄", "任家店", "田家沟", "北磴", "叉车厂", "大徐屯", "东营子", "鸽子洞", "建北", "孔家沟", "龙头", "泥河子", "石脑", "西南杖子", "夏家河",
              "四家子", "宣家沟", "杨家店", "营北", "袁家堡", "汤河", "苏家屯", "大连北", "鞍山西", "营口东", "鲅鱼圈", "铁岭西", "开原西", "盖州西", "海城西",
              "昌图西", "瓦房店西", "普湾", "西丰", "五女山", "大雅河", "古城子", "桓龙湖", "天桥沟", "雅河", "双辽", "三家子", "凤城东", "通远堡西", "五龙背东",
              "本溪新城", "南芬北", "东港北", "庄河北", "丹东西", "北井子", "大孤山", "青堆", "花园口", "裕国", "阜新南", "龙爪沟", "石城", "长甸", "南票", "桥北",
              "四台子", "温泉寺", "苏北", "官家", "羊圈子", "育新", "黑山", "凌海", "小东", "八道壕", "十家子", "泡子", "东辛庄", "黄甲屯", "何三家", "金场堡",
              "三江口", "曲家店", "泉沟", "呼和浩特", "包头", "通辽", "赤峰", "海拉尔", "加格达奇", "满洲里", "临河", "乌兰浩特", "乌海", "湖北", "牙克石",
              "包头东", "集宁南", "扎兰屯", "乌海西", "丰镇", "大杨树", "奈曼", "二连", "天义", "伊图里河", "大雁", "乌拉特前旗", "博克图", "图里河", "甘旗卡",
              "阿尔山", "卓资山", "萨拉齐", "巴彦高勒", "平庄", "保康", "土贵乌拉", "察素齐", "根河", "五原", "免渡河", "宝龙山", "林东", "大板", "桑根达来",
              "阿里河", "八仙筒", "林西", "经棚", "查布嘎", "旗下营", "红彦", "珠斯花", "元宝山", "巴林", "羊场", "成吉思汗", "化德", "四道湾", "扎赉诺尔西",
              "开鲁", "商都", "东来", "保健", "吉文", "嵯岗", "卫东", "甘河", "白桦排", "讷尔克气", "大林", "包头西", "小扬气", "库都尔", "正镶白旗", "白云鄂博",
              "乃林", "劲松", "古源", "万水泉", "乌尔旗汗", "乌拉山", "扎赉诺尔", "哈力图", "小黑山", "沟口", "扎罗木得", "通辽北", "红花沟", "兴和", "达拉滨",
              "乌奴耳", "加南", "乌鲁布铁", "宁家", "卓山", "翠峰", "老府", "克一河", "松树林", "北头河", "明水河", "兴安岭", "葛根庙", "古里金", "大杨树东",
              "平庄南", "西哲里木", "白音胡硕", "哈达阳", "哈克", "南木", "朝阳村", "和硕", "五十家子", "福巨", "白狼", "包头北", "雅鲁", "富林", "小北", "余粮堡",
              "汗苏鲁", "牧原", "三道桥", "平顶庙", "大陆号", "春亭阁", "三把火", "刁家段", "索伦", "高台子", "宝木吐", "归流河", "哈拉苏", "哈拉沟", "朝格温多尔",
              "大石寨", "先锋", "忽吉图", "紫沟", "白音特拉", "星耀", "四分滩", "北台子", "西胡尔清", "二道沟", "哈业胡同", "白彦花", "贲红", "景阳林", "中台子",
              "道德", "卧牛河", "煤田", "公庙子", "大其拉哈", "福兴地", "车家营子", "燕舞", "乌海北", "贺日斯台", "三营图", "马架子", "道仑郭勒", "布敦化", "赤峰西",
              "旗山", "六地沟", "上店", "沙力", "查干哈达", "好鲁库", "五叉沟", "杭锦旗", "七苏木", "宇宙地", "哲里木", "和平村", "古鲁满汗", "坝梁", "新艾里",
              "都伦", "双泡子", "新帐房", "西小沟", "喇嘛山", "索图罕", "沙日乃", "公主埂", "杜尔基", "四分地", "营盘湾", "明安", "打拉亥", "莺歌", "扎鲁特",
              "道老杜", "汇流河", "达盖", "金家店", "牙拉盖图", "刘伟壕", "西岭口", "查干芒和", "四合台", "吐列毛杜", "乌兰中", "石灰窑", "岭南", "毛告吐", "乌斯台",
              "乌固诺尔", "石门村", "碱柜", "艾不盖", "下坑子", "前十家", "伊和恩格拉", "沙拐子", "赫尔洪得", "珠日河牧场", "哈日努拉", "厂汗", "哈达", "新南沟",
              "舍伯吐", "朝中", "德伯斯", "桃儿湾", "东宫", "云端", "准沙日乌苏", "西小召", "岩山", "老羊壕", "原林", "岭北", "昆都仑召", "三介海子", "花吐古拉",
              "喀喇其", "高家村", "杜家台", "头道桥", "乌兰胡同", "一四二公里", "温都和硕", "西斗铺", "塔力根土", "衙门庙", "豪门", "好力套高", "桃司兔", "东土城",
              "那林桃亥", "完工", "达日其嘎", "昆都庙", "补隆淖", "水库", "宝拉格", "朝原", "静岭", "陵丘", "郭尔奔敖包", "查干特格", "石门子", "齐哈日格图", "金林",
              "德日斯图", "牛耳河", "满归", "皇德", "乌兰丘", "大良", "楚鲁图", "赛汗塔拉", "土牧尔台", "图呼木", "乌兰哈达", "西里", "赛乌苏", "阿达日格", "东壕",
              "锡林呼都嘎", "朱日和", "白音察干", "忠工屯", "阿龙山", "白银哈尔", "呼鲁斯太", "草六格尔", "芦家村", "乌兰花", "阿贵图", "巴彦郭勒", "新绰源", "胪滨",
              "金河", "阿乌尼", "塔尔气", "西口", "牛汾台", "蓿蓿", "白云", "后坝", "哈拉黑", "嘎拉德斯汰", "岳家井", "三根河", "伊列克得", "鄂尔多斯", "低_窝_铺",
              "西乌旗", "二龙屯", "白音华南", "阿尔山北", "伊敏", "温根托海", "伊敏索木", "辉河", "巴日图", "道劳杜", "德仁", "杜拉尔", "罕达盖", "阿巴嘎旗",
              "苏尼特左旗", "继承", "西索木", "新贤城", "莫尔道嘎", "北兴安", "霍林郭勒", "治安", "木里图", "金宝屯", "钱家店", "大罕", "门达", "欧里", "高林屯",
              "敖力布告", "东胜", "赤峰东", "汐子", "热水", "马林", "二龙", "湖南", "民族", "南洼", "三道营", "陶卜齐", "陶思浩", "瓦房", "瓦窑坝", "乌斯土",
              "三义井", "山湾子", "安庆沟", "昂乃", "敖汉", "敖来", "八苏木", "白音他拉", "曹家营子", "达拉特旗", "得耳布尔", "东明村", "东南营子", "东兴", "风水沟",
              "福生庄", "嘎什甸子", "嘎什吐", "公积坂", "姑家堡", "红砂坝", "葫芦", "黄花筒", "孤山子", "古城湾", "老哈河", "马盖图", "美岱召", "莲花山", "柳毛沟",
              "乜吐硕", "牛家营子", "舍力虎", "水地", "夏拉哈马", "小河沿", "四合", "苏集", "太平庄", "新安庄", "新窝铺", "杨家营", "猛鹫山", "南兴安", "西六方",
              "锡林浩特", "呼和浩特东", "额济纳", "伊尔施", "达拉特西", "兴和西", "白音库伦", "乌日图", "大青沟", "库伦", "卓资东", "十八台", "东胜西", "中滩", "银川",
              "中卫", "固原", "石嘴山", "青铜峡", "中宁", "惠农", "同心", "干塘", "沙坡头", "宣和", "营盘水", "大武口", "西大滩", "汝箕沟", "暖泉", "大磴沟",
              "白芨沟", "镇罗堡", "三关口", "土桥子", "王团庄", "三营", "艾家村", "长农", "褚家湾", "大坝", "大战场", "二营", "韩府湾", "黄羊滩", "黄羊湾", "李旺",
              "六盘山", "彭阳", "七营", "沈家河", "石坝", "中宁南", "定边", "灵武", "盐池", "银川南", "中宁东", "红寺堡", "柳家庄", "太阳山", "狮子营", "孔庄",
              "平罗", "宁东", "宁东南", "西宁", "格尔木", "德令哈", "乐都", "平安驿", "察尔汗", "柯柯", "锡铁山", "哈尔盖", "乐都南", "海东西", "马兰", "天峻",
              "湟源", "海晏", "西宁西", "乌兰", "刚察", "饮马峡", "沱沱河", "南山北", "大柴旦", "鱼卡", "马海", "茶卡", "民和南", "门源", "大通西", "济南",
              "烟台", "淄博", "潍坊", "泰山", "兖州", "德州", "菏泽", "威海", "聊城", "济宁", "临沂", "滕州", "东营", "胶州", "邹城", "莱阳", "高密",
              "曲阜", "济南东", "蓝村", "曹县", "郓城", "梁山", "青州市", "青岛", "沧口", "禹城", "巨野", "文登", "临清", "乳山", "莒南", "平邑", "费县",
              "阳谷", "莱西", "四方", "平原", "海阳", "嘉祥", "城阳", "桃村", "磁窑", "博兴", "晏城", "泗水", "东明县", "即墨", "烟台南", "莱芜东", "桓台",
              "威海北", "算王庄", "南博山", "莱芜西", "荣成", "牟平", "桃村北", "即墨北", "莱西北", "海阳北", "文登东", "晏城北", "南仇", "娄山", "范镇", "常庄",
              "蔺家楼", "黑旺", "源迁", "司家岭", "沙岭庄", "燕家庄", "上高镇", "济南西", "滨州", "东营南", "阳信", "大河桥", "商河", "临邑", "利津南", "临沂北",
              "临淄", "郯城", "沂水", "定陶", "诸城", "五莲", "莒县", "湖田", "日照", "鄄城", "枣庄", "青岛西", "沂南", "黄草场", "金岭镇", "德州东", "泰安",
              "枣庄西", "曲阜东", "滕州东", "庙山", "青岛北", "章丘", "昌乐", "胶州北", "泰山西", "平度", "坪上", "陵城", "枣庄东", "兰陵北", "白塔村", "太原",
              "大同", "临汾", "运城", "阳泉", "侯马", "平遥", "榆次", "朔州", "介休", "五台山", "忻州", "太谷", "原平", "长治北", "霍州", "永济", "洪洞",
              "天镇", "河津", "灵石", "祁县", "闻喜", "怀仁", "阳城", "阳高", "寿阳", "翼城", "宁武", "灵丘", "襄汾", "代县", "稷山", "岱岳", "大营",
              "东阳", "岢岚", "赵城", "神头", "东镇", "嘉峰", "繁峙", "榆社", "太原北", "新绛", "太原东", "武乡", "沁县", "古交", "五寨", "轩岗", "娘子关",
              "襄垣", "河边", "平旺", "神池", "镇城底", "柳林河", "阳泉曲", "阳曲", "大涧", "东河南", "定襄", "北营", "孝西", "潞城", "黎城", "枣林", "刘村",
              "平型关", "下社", "台曲", "乔村", "北白", "安塘", "金山铺", "修文", "阳明堡", "云彩岭", "华岩", "西张", "金沙滩", "平社", "豆罗", "高村",
              "东淤地", "大同东", "南河", "播明", "招柏", "永嘉堡", "白壁关", "古东", "兑镇", "罗文皂", "宋家庄", "集义庄", "孝南", "青羊湾", "岩会", "东庄",
              "雁儿崖", "王官人屯", "程家", "沿寨", "北周庄", "微子镇", "庄儿上", "红石崖", "路家庄", "万安", "周士庄", "秦家庄", "红崖", "夏小堡", "水洋",
              "聚乐堡", "北义井", "蒋村", "扫石", "夏店", "义安", "北田受", "土堂", "柴庄", "口泉", "四老沟", "魏家沟", "洪善", "牛晶坪", "北阳", "张兰",
              "下盘石", "佛峪", "晋城", "侯马北", "磨滩", "高平", "长治", "沁水", "东田良", "晋城北", "西南呈", "桥上", "阳泉北", "堡子湾", "孤山", "长子",
              "吕梁", "汾阳", "文水", "交城", "清徐", "柳林南", "赛鱼", "风陵渡", "南陈铺", "北板桥", "大辛庄", "东坡", "东元庆", "西武匠", "西阳村", "小宋",
              "赵庄", "太原南", "临汾西", "侯马西", "运城北", "介休东", "灵石东", "平遥古城", "霍州东", "太谷西", "永济北", "闻喜西", "洪洞西", "祁县东", "襄汾西",
              "晋中", "山阴", "怀仁东", "应县", "平遥东", "汾河", "白羊墅", "西安", "宝鸡", "安康", "汉中", "咸阳", "延安", "华山", "榆林", "韩城", "神木",
              "杨陵镇", "略阳", "蔡家坡", "西乡", "旬阳", "清涧", "阳平关", "镇安", "城固", "潼关", "紫阳", "柞水", "凤州", "绥德", "秦岭", "白河县", "洋县",
              "合阳", "勉西", "旬阳北", "蒲城", "汉阴", "长沙坝", "张桥", "韦庄", "石泉县", "黄陵", "米脂", "孙镇", "富县", "冷水", "子长", "蜀河", "凤县",
              "甘泉", "钟家村", "坡底村", "麻虎", "白水江", "早阳", "燕子砭", "苏家坡", "高潭子", "巴山", "巨亭", "洞子崖", "晏家坝", "棕溪", "徐家坪", "马蹄湾",
              "杜赵", "张家船", "吕河", "麻柳", "道镇", "乐素河", "权河", "九燕山", "毛坝关", "大米溪", "石庙沟", "高滩", "生芝渠", "松树坡", "红花铺", "兰滩",
              "横现河", "大竹园", "向阳镇", "茶镇", "南溪沟", "红卫坝", "延安北", "宝鸡南", "西安南", "西安北", "娘娘庙", "独李村", "千河", "永乐店", "冯家山",
              "千阳", "火烧寨", "阎良", "大荔", "水沟", "史家铺", "萧家村", "陇县", "凤翔", "三原", "商洛", "丹凤", "砚川", "小河镇", "三花石", "高梁铺",
              "涧池铺", "缯溪河", "锦界", "渭南北", "华山北", "武功", "兴平", "勉县", "临潼", "西安东", "福临堡", "商南", "渭南南", "蒲城东", "富县东", "吴堡",
              "靖边", "甘泉北", "子洲", "清涧县", "大保当", "西沟", "杨陵南", "岐山", "咸阳秦都", "杨陵", "彬县", "礼泉", "乾县", "永寿", "长武", "咸阳西",
              "黄家寨", "黄陵南", "虢镇", "合阳北", "上海", "松江", "上海虹桥", "枫泾", "上海南", "金山卫", "莘庄", "芦潮港", "上海西", "松江南", "金山北", "海湾",
              "金山园区", "亭林", "新桥", "叶榭", "车墩", "春申", "上海东", "成都", "达州", "绵阳", "攀枝花", "南充", "广元", "内江", "宜宾", "西昌", "德阳",
              "自贡", "广安", "遂宁", "江油", "渠县", "万源", "峨眉", "隆昌", "营山", "资阳", "眉山", "乐山", "蓬安", "广汉", "资中", "成都南", "简阳",
              "汉源", "昭化", "宣汉", "米易", "大英", "德昌", "金堂", "西昌南", "长沙埂", "土溪", "普雄", "华蓥", "蓬溪", "冕宁", "彭山", "新江", "沙湾",
              "三汇镇", "燕岗", "甘洛", "漫水湾", "太和", "罗江", "峨边", "马角坝", "桐子林", "越西", "永郎", "金口河", "喜德", "宜宾南", "庆华", "新津",
              "双流", "仓山镇", "开江", "朝天", "双龙", "罗文", "阿寨", "南充东", "临巴溪", "毛坝", "王场", "双凤驿", "望溪", "拉白", "官渡", "共和", "迎祥街",
              "渡市", "覃家坝", "青龙场", "青花", "竹园坝", "双福", "迤资", "河市坝", "丙谷", "冉家河", "梁家坝", "蒲坝", "青杠", "擦耳", "沙坝", "自贡南",
              "三堆子", "南尔岗", "养马河", "拉鲊", "埃岱", "石柱槽", "流溪场", "吴场", "琅琊", "新凉", "白石岩", "西昌北", "下普雄", "孔滩", "金沙", "大滩",
              "禄市", "马村", "花棚子", "曹家坝", "龙潭寺", "柏村", "石燕桥", "苏雄", "俞冲", "长胜沟", "侯家坪", "轸溪", "观阁", "代湾", "经久", "杨漩",
              "礼州", "黄联关", "李市镇", "铁西", "双流机场", "眉山东", "彭山北", "青白江东", "青神", "新都东", "青莲", "花楼坝", "凉红", "顺河场", "公兴",
              "登瀛崖", "豆坝", "长河坝", "五凤溪", "关村坝", "九里", "冕山", "石板滩", "庙子沟", "尼日", "灵仙庙", "刘沟", "红花塘", "归德乡", "洪安乡", "陈家湾",
              "临江寺", "陶家沟", "石桥镇", "垭口", "墨池坝", "横江", "剑门关", "格里坪", "尼波", "小高", "达州东", "上普雄", "麻栗", "瓦祖", "乐武", "内江南",
              "铁口", "乐跃", "敬梓场", "月华", "红峰", "凌家场", "新铁村", "黄家坝", "尔赛河", "牛坪子", "枣子林", "联合乡", "黄水塘", "一步滩", "沙马拉达",
              "江油北", "渡口", "倮果", "巴关河", "弄弄坪", "密地", "青川", "白田坝", "思濛", "嘉川", "斑竹园", "三合场", "沙溪坝", "走马岭", "彰明", "元坝",
              "双河口", "二郎庙", "罗妙真", "小溪坝", "青白江", "小桥", "皂角铺", "石马坝", "旺苍", "厚坝", "新都", "老坪坝", "黄许镇", "上寺", "尚武", "白水",
              "谭家坝", "广元南", "黄洋", "白果", "安家湾", "八庙", "天回镇", "普济", "广元东", "龙凤场", "高坝", "新兴场", "东坝", "南岸坝", "小浩", "遂宁南",
              "三星堆", "白河东", "刘家沟", "百里峡", "都江堰", "犀浦", "郫县西", "红光镇", "青城山", "成都东", "巴中", "离堆公园", "迎宾路", "泸州", "思蒙",
              "彭州", "安德", "郫县", "犀浦东", "广安南", "岳池", "乐山北", "金沙湾", "大英东", "弯坵", "椑木镇", "鲜滩", "峨眉山", "罗江东", "广汉北", "朝天南",
              "郫县东", "资阳北", "内江北", "简阳南", "隆昌北", "资中北", "平昌", "南充北", "苍溪", "阆中", "南部", "武胜", "新津南", "双流西", "姚渡", "天津",
              "塘沽", "天津西", "静海", "天津北", "芦台", "泰达", "蓟县", "杨村", "汉沽", "唐官屯", "宝坻", "杨柳青", "蓟县南", "北仓", "茶淀", "北塘",
              "于家堡", "军粮城", "张贵庄", "下仓", "上仓", "曹子里", "崔黄口", "大口屯", "汉沟镇", "蓟州", "豆张庄", "武清", "天津南", "滨海", "滨海北",
              "军粮城北", "乌鲁木齐", "库尔勒", "吐鲁番", "哈密", "喀什", "阿克苏", "奎屯", "石河子", "鄯善", "乌西", "库车", "阿拉山口", "博乐", "和静", "柳树泉",
              "焉耆", "巴楚", "大丰", "巴伦台", "昌吉", "鱼儿沟", "精河", "七泉湖", "沙湾县", "阿图什", "乌苏", "三坪", "新和", "玛纳斯", "托托", "古河",
              "安集海", "奎屯西", "军户", "奎屯东", "乐土驿", "呼图壁", "四棵树", "乌兰乌苏", "伊里生", "乌鲁木齐南", "鄯善北", "吐鲁番北", "吐哈", "八棵树", "望布",
              "沙泉子", "阿拉沟", "古尔图", "胜利桥", "幸福滩", "包尔海", "下新光", "小土古里", "开干齐", "轮台", "星源", "托克逊", "国光", "甘河子", "山口",
              "雅子泉", "尾亚", "尼勒克", "精河南", "布列开", "伊宁", "伊宁东", "福海", "玛纳斯湖", "北屯镇", "和什托洛盖", "疏勒", "五五", "墨玉", "阿克陶",
              "和田", "叶城", "英吉沙", "泽普", "皮山", "莎车", "克拉玛依", "大西沟", "北屯市", "哈密南", "霍尔果斯", "达板城", "煤窑沟", "十三间房", "柯坪",
              "了墩", "阿勒泰", "霍城", "金银川", "昆明", "大理", "昭通", "曲靖", "宣威", "罗平", "水富", "楚雄", "石林", "广通", "玉溪", "盐津", "大关",
              "元谋", "彝良", "师宗", "黑井", "盐津北", "杨林", "昭通北", "昆明西", "昆明东", "沾益", "祥云", "富源", "喜鹊乐", "凤凰山", "牛街", "蒙自",
              "河口北", "阿南庄", "昆阳", "温泉", "禄丰", "黄瓜园", "甸心", "青龙寺", "仙水", "尹地", "吴官田", "白沙坡", "一平浪", "大德", "读书铺", "岔河",
              "昭通南", "田坝", "滩头", "大旧庄", "邓家湾", "红江", "红土沟", "徐屯", "朱嘎", "牧羊村", "棠海", "小月旧", "勤丰营", "铜鼓溪", "小新街", "大湾子",
              "木戛", "曾家坪子", "邓家村", "金马村", "平河口", "炎方", "里腊", "龙骨甸", "龙塘坝", "师庄", "浑水塘", "火烧坝", "沙沙坡", "碧鸡关", "小村",
              "高楼房", "鱼坝村", "小路溪", "普洱渡", "小哨", "松林", "彝良南", "羊尾哨", "密马龙", "羊臼河", "车转湾", "泽润里", "大松树", "小箐", "黑老湾",
              "塔石咀", "基长", "格以头", "白水镇", "秧田冲", "屏边", "江所田", "陆良", "新安", "大田边", "宜良北", "中寨", "宜耐", "西街口", "永丰营", "石林南",
              "大湾", "岔江", "昆明南", "广南卫", "秧草地", "羊堡", "沐滂", "南华", "沙桥", "班猫箐", "长冲", "长坡岭", "乐善村", "芦沟", "马龙", "茂舍祖",
              "弥渡", "施家嘴", "小得江", "羊者窝", "姚安", "渔坝村", "照福铺", "丽江东", "丽江", "革居", "王家营西", "都格", "鹤庆", "塔石嘴", "大苴", "建水",
              "蒙自北", "通海", "花土坡", "苍坪", "豆沙关", "田梁子", "小儿坪", "小关溪", "临江溪", "广通北", "禄丰南", "七甸", "曲江", "石林西", "普者黑",
              "广南县", "弥勒", "富宁", "曲靖北", "富源北", "嵩明", "中谊村", "杭州", "宁波", "温州", "义乌", "嘉兴", "绍兴", "杭州东", "嘉善", "金华西",
              "衢州", "余姚", "海宁", "诸暨", "萧山", "上虞", "丽水", "永康", "江山", "龙游", "浦江", "长兴", "武义", "兰溪", "缙云", "青田", "临平",
              "湖州南", "千岛湖", "长安镇", "金华南", "新安江", "永昌", "金华", "寿昌", "功塘", "杭州南", "长兴南", "德清西", "武义北", "下藤桥", "德清", "绍兴东",
              "宁波东", "嘉兴南", "桐乡", "余杭", "嘉善南", "海宁西", "绍兴北", "上虞北", "余姚北", "湖州", "庄桥", "舟山", "南湖东", "永康南", "缙云西", "温州南",
              "台州", "温岭", "苍南", "乐清", "三门县", "永嘉", "宁海", "临海", "奉化", "瑞安", "绅坊", "鳌江", "雁荡山", "三亚", "海口", "美兰", "海口东",
              "琼海", "文昌", "博鳌", "万宁", "陵水", "亚龙湾", "神州", "凤凰机场", "乐东", "白马井", "临高南", "老城镇", "崖州", "福山镇", "棋子湾", "黄流",
              "尖峰", "银滩", "金月湾", "乐昌东", "东方", "拉萨", "那曲", "安多", "当雄", "协荣", "日喀则", "仁布", "曲水县", "尼木"]

train_site.sort(key=len, reverse=True)
train_site_re = "|".join(train_site)

key_chinese = "年月日开"
money_chinese = "壹贰叁肆伍陆柒捌玖零拾佰仟万亿兆元角分整正"
common_chinese = "".join(
    [char for char in ALPHABET if u'\u4e00' <= char <= u'\u9fff' and char not in key_chinese + money_chinese])
chinese = "".join([char for char in ALPHABET if u'\u4e00' <= char <= u'\u9fff'])

siamese_decode_config = {
        "0123456789": "ℂ",
        "ABCDEFGHIJKLMNOPQRSTUVWXYZ": "ℇ",
        "abcdefghijklmnopqrstuvwxyz": "℈",
        common_chinese: "ℌ",
        money_chinese: "℣"
}

siamese_decode_config_revert = {v: k if v != "ℌ" else chinese for k, v in siamese_decode_config.items()}
siamese_decode = {char: decode for chars, decode in siamese_decode_config.items() for char in chars}

invoice_pattern = {
    "train_ticket": {
        "__information_expand": ["限乘当日当次车", "仅供报销使用", "始发改签", "开车后改签不予退票", "已检"],
        "__site_type": ["二等座", "二等卧", "一等座", "一等卧", "新空调硬座", "新空调硬卧", "新空调软座", "新空调软卧"],
        "__saler": ["售","站售","东售","南售","西售","北售"],
        "__买票到12306": ["买票到12306"],
        "__发货请到95306": ["发货请到95306"],
        "__中国铁路祝您旅途愉快": ["中国铁路祝您旅途愉快"],
        "__检票": ["检票"],
        "name": ["ℌ{2,5}"],
        "start": ["ℌ{1,4}"],
        "terminal": ["ℌ{1,4}"],
        "start_en": ["ℇ℈{3,19}","℈{4,19}"],
        "terminal_en": ["ℇ℈{3,19}","℈{4,19}"],
        "site": ["ℂℂℌℂℂℇℌ"],
        "time": ["ℂℂ:ℂℂ开"],
        "date": ["ℂℂℂℂ/ℂℂ/ℂℂ", "ℂ{2,4}年ℂℂ月ℂℂ日"],
        "$train_number": ["ℇℂ{1,4}", "ℂℂℂℂ"],
        "price": ["￥ℂ{1,4}.ℂ元"],
        "id_number": ["ℂ{6,10}*{3,5}ℂ{3}ℇ", "ℂ{6,10}*{3,5}ℂ{3}℈", "ℂ{6,10}*{3,5}ℂ{4}"],
        "ticket_id": ["ℇℂ{6}"]
    },
    "value_added_tax_invoice": {
        "__form": ["发票联", "抵扣联", "记账联"],
        "__货物或应税劳务": ["货物或应税劳务"],
        "__规格型号": ["规格型号"],
        "__单位": ["单位"],
        "__数量": ["数量"],
        "__单价": ["单价"],
        "__金额": ["金额"],
        "__税率": ["税率"],
        "__税额": ["税额"],
        "__销售方": ["销售方"],
        "__价税合计": ["价税合计(大写)"],
        "__购方名称": ["名称:"],
        "__购方纳税人识别号": ["纳税人识别号:"],
        "__购方地址电话": ["地址、电话:"],
        "__购方开户行及账号": ["开户行及账号:"],
        "__销方名称": ["名称:"],
        "__销方纳税人识别号": ["纳税人识别号:"],
        "__销方地址电话": ["地址、电话:"],
        "__销方开户行及账号": ["开户行及账号:"],
        "__小写": ["(小写)"],
        "__收款人": ["收款人:"],
        "__复核": ["复核:"],
        "__开票人": ["开票人:"],
        "__发票代码": ["发票代码:"],
        "__发票号码": ["发票号码:"],
        "__校验码": ["校验码"],
        "__开票日期": ["开票日期:"],
        "__合": ["合"],
        "__计": ["计"],
        "ticket_code": ["ℂ{10,12}"],
        "ticket_code_": ["ℂ{10,12}"],
        "ticket_id": ["ℂ{8}"],
        "ticket_id_": ["ℂ{8}"],
        "date": ["ℂℂℂℂ年ℂℂ月ℂℂ日"],
        "money": ["￥ℂ{1,8}.ℂℂ元"],
        "purchaser": ["ℌ{2,25}"],
        "purchaser_code": ["ℂ{14,19}ℇ"],
        "purchaser_address_tel": ["ℌ{5,20}ℂ{5,10}"],
        "purchaser_bank_account": ["ℌ{5,20}ℂ{5,10}"],
        "items": ["*ℌ{2,25}"],
        "specifications": ["ℌ{1,3}"],
        "unit": ["ℌ{1,3}"],
        "amount": ["ℂ{1,8}.ℂ{1,8}"],
        "price": ["ℂ{1,8}.ℂ{1,8}"],
        "moneys": ["ℂ{1,8}.ℂℂ"],
        "tax_rate": ["ℂ{1,2}%"],
        "taxes": ["ℂ{1,8}.ℂℂ","***"],
        "tax_total": ["￥ℂ{1,8}.ℂℂ元"],
        "money_total": ["￥ℂ{1,8}.ℂℂ元"],
        "money_chinese": ["℣{2,25}"],
        "saler": ["ℌ{2,25}"],
        "saler_code": ["ℂ{14,19}ℇ"],
        "saler_address_tel": ["ℌ{5,20}ℂ{5,10}"],
        "saler_bank_account": ["ℌ{5,20}ℂ{5,10}"],
        "payee": ["ℌ{2,4}"],
        "review": ["ℌ{2,4}"],
        "drawer": ["ℌ{2,4}"],
        "check_code": ["ℂ{4,16}"]
    },
    "quota_invoice": {
        "__发票代码": ["发票代码"],
        "__发票号码": ["发票号码"],
        "__加盖发票专用章有效": ["加盖发票专用章有效"],
        "ticket_code": ["ℂ{12}"],
        "ticket_id": ["ℂ{8}"],
        "money_chinese": ["℣{2,10}"]
    },
    "taxi_invoice": {
        "__发票代码": ["代码"],
        "__发票号码": ["号码"],
        "__监督电话": ["监督电话"],
        "__收款方名称": ["收款方名称"],
        "__企业电话": ["企业电话"],
        "__车号": ["车号"],
        "__证号": ["证号"],
        "__日期": ["日期"],
        "__时间": ["时间", "起止时间"],
        "__上车": ["上车"],
        "__下车": ["下车"],
        "__单价": ["单价"],
        "__里程": ["里程"],
        "__等候": ["等候"],
        "__金额": ["金额", ""],
        "__含电调费": ["含电调费", "预约叫车服务费"],
        "__路桥费": ["路桥费", "燃油附加费", "附加费"],
        "__卡号": ["卡号"],
        "__实收金额": ["实收金额", "金额合计"],
        "ticket_code": ["ℂ{12}"],
        "ticket_id": ["ℂ{8}"],
        "taxi_id": ["ℇℂ{5}"],
        "certificate_id": ["ℂ{6,12}"],
        "date": ["ℂℂℂℂ/ℂℂ/ℂℂ", "ℂℂℂℂ年ℂℂ月ℂℂ日", "ℂℂℂℂ-ℂℂ-ℂℂ"],
        "time": ["ℂℂ:ℂℂ-ℂℂ:ℂℂ"],
        "begin": ["ℂℂ:ℂℂ"],
        "end": ["ℂℂ:ℂℂ"],
        "price": ["￥ℂ{1,2}.ℂℂ", "ℂ{1,2}.ℂℂ元", "ℂ{1,2}.ℂℂ"],
        "distance": ["ℂ{1,3}.ℂ℈{2}", "ℂ{1,3}.ℂℌ{2}"],
        "wait": ["ℂ{1,2}:ℂℂ:ℂℂ"],
        "money": ["￥ℂ{1,3}.ℂℂ", "ℂ{1,3}.ℂℂ元", "ℂ{1,3}.ℂℂ"],
        "order_expand": ["￥ℂ{1,2}.ℂℂ", "ℂ{1,2}.ℂℂ元", "ℂ{1,2}.ℂℂ"],
        "access_expand": ["￥ℂ{1,2}.ℂℂ", "ℂ{1,2}.ℂℂ元", "ℂ{1,2}.ℂℂ"],
        "total": ["￥ℂ{1,3}.ℂℂ", "ℂ{1,3}.ℂℂ元", "ℂ{1,3}.ℂℂ"]
    },
    "air_invoice": {
        "__航空运输电子客票行程单": ["航空运输电子客票行程单"],
        "__旅客姓名": ["旅客姓名"],
        "__有效身份证件号码": ["有效身份证件号码"],
        "__印刷序号": ["印刷序号"],
        "__签注": ["签注"],
        "__承运人": ["承运人"],
        "__航班号": ["航班号"],
        "__座位等级": ["座位等级"],
        "__日期": ["日期"],
        "__时间": ["时间"],
        "__客票级别/客票类别": ["客票级别/客票类别"],
        "__客票生效日期": ["客票生效日期"],
        "__有效截止日期": ["有效截止日期"],
        "__免费行李": ["免费行李"],
        "__票价": ["票价"],
        "__民航发展基金": ["民航发展基金"],
        "__燃油附加费": ["燃油附加费"],
        "__其他税费": ["其他税费"],
        "__合计": ["合计"],
        "__电子客票号码": ["电子客票号码"],
        "__验证码": ["验证码"],
        "__提示消息": ["提示消息"],
        "__保险费": ["保险费"],
        "__销售单位代号": ["销售单位代号"],
        "__填开单位": ["填开单位"],
        "__填开日期": ["填开日期"],
        "__验真网址": ["验真网址"],
        "__服务热线": ["服务热线"],
        "__短信验真": ["短信验真"],
        "name": ["ℂ{2,4}"],
        "id_number": ["ℂ{15,18}"],
        "restriction": ["ℌ{3,5}"],
        "serial_number": ["ℂ{10,12}"],
        "start": ["ℌ{2,4}"],
        "terminal1": ["ℌ{2,4}"],
        "terminal2": ["ℌ{2,4}"],
        "terminal3": ["ℌ{2,4}"],
        "terminal4": ["ℌ{2,4}"],
        "carrier": ["ℌ{2,4}"],
        "flight": ["ℇℇℂ{5}"],
        "class": ["ℇ"],
        "date": ["ℂℂℂℂ/ℂℂ/ℂℂ", "ℂℂℂℂ年ℂℂ月ℂℂ日", "ℂℂℂℂ-ℂℂ-ℂℂ"],
        "time": ["ℂℂ:ℂℂ"],
        "price": ["ℂ{1,5}.ℂℂℇℇ"],
        "fund": ["ℂ{1,5}.ℂℂℇℇ"],
        "expand": ["ℂ{1,5}.ℂℂℇℇ", "ℇ{6}"],
        "tax": ["ℂ{1,5}.ℂℂℇℇ"],
        "total": ["ℂ{1,5}.ℂℂ"],
        "e_ticket_id": ["ℂ{13}"],
        "check_code": ["ℂ{4}"],
        "information": ["ℌ{6,15}"],
        "insurance": ["ℇ{3}"],
        "agent_code": ["ℇ{6}ℂ{3}"],
        "issued_by": ["ℌ{8,20}"],
        "date_of_issue": ["ℂℂℂℂ/ℂℂ/ℂℂ", "ℂℂℂℂ年ℂℂ月ℂℂ日", "ℂℂℂℂ-ℂℂ-ℂℂ"]
    },
    "printed_invoice": {
        "__发票代码": ["发票代码"],
        "__发票号码": ["发票号码"],
        "__开票日期": ["开票日期"],
        "__行业分类": ["行业分类"],
        "__机打号码": ["机打号码"],
        "__付款方名称": ["付款方名称"],
        "__付款方地址": ["付款方地址"],
        "__付款方识别号": ["付款方识别号"],
        "__付款方电话": ["付款方电话"],
        "__开票项目": ["开票项目"],
        "__数量": ["数量"],
        "__单价": ["单价"],
        "__金额": ["金额"],
        "__备注": ["备注"],
        "__总计金额": ["总计金额"],
        "__收款方名称": ["收款方名称"],
        "__收款方银行名称": ["收款方银行名称"],
        "__金额大写": ["金额大写"],
        "__收款方识别号": ["收款方识别号"],
        "__收款方银行账号": ["收款方银行账号"],
        "__收款方地址": ["收款方地址"],
        "__收款方电话": ["收款方电话"],
        "__查验码": ["查验码"],
        "__查验网址": ["查验网址"],
        "__开票人": ["开票人"],
        "__开具金额合计限壹万元(含),万元以上无效": ["开具金额合计限壹万元(含),万元以上无效"],
        "ticket_code": ["ℂ{12}"],
        "ticket_id": ["ℂ{8}"],
        "date": ["ℂℂℂℂ/ℂℂ/ℂℂ", "ℂℂℂℂ年ℂℂ月ℂℂ日", "ℂℂℂℂ-ℂℂ-ℂℂ"],
        "trade": ["ℌ{3,6}"],
        "printed_id": ["ℂ{8}"],
        "purchaser": ["ℌ{2,25}"],
        "purchaser_address": ["ℌ{5,25}ℇℂ"],
        "purchaser_code": ["ℂ{14,19}ℇ"],
        "purchaser_tel": ["ℂ{5,10}"],
        "items": ["*ℌ{2,25}"],
        "amount": ["ℂ{1,8}", "ℂ{1,8}.ℂ{1,8}"],
        "price": ["ℂ{1,8}.ℂ{1,8}"],
        "money": ["ℂ{1,8}.ℂℂ"],
        "money_total": ["￥ℂ{1,8}.ℂℂ"],
        "saler": ["ℌ{2,25}"],
        "saler_bank": ["ℌ{5,20}"],
        "money_chinese": ["℣{2,25}"],
        "saler_code": ["ℂ{14,19}ℇ"],
        "saler_bank_account": ["ℂ{8,20}"],
        "saler_address": ["ℌ{5,20}ℇℂ"],
        "saler_tel": ["ℂ{5,10}"],
        "check_code": ["ℂ{15,30}"],
        "drawer": ["ℌ{2,4}"],
    },
    "roll_invoice": {
        "__发票代码": ["发票代码"],
        "__发票号码": ["发票号码"],
        "__机打号码": ["机打号码"],
        "__机器编码": ["机器编码"],
        "__销售方名称": ["销售方名称"],
        "__销售方识别号": ["纳税人识别号"],
        "__开票日期": ["开票日期"],
        "__收款员": ["收款员"],
        "__购买方名称": ["购买方名称"],
        "__购买方识别号": ["纳税人识别号"],
        "__项目": ["项目"],
        "__单价": ["单价"],
        "__数量": ["数量"],
        "__金额": ["金额"],
        "__合计金额(小写)": ["合计金额(小写)"],
        "__合计金额(大写)": ["合计金额(大写)"],
        "__校验码": ["校验码"],
        "ticket_code": ["ℂ{12}"],
        "ticket_id": ["ℂ{8}"],
        "printed_id": ["ℂ{8}"],
        "machine_id": ["ℂ{12}"],
        "saler": ["ℌ{4,25}"],
        "saler_code": ["ℂ{14,19}ℇ"],
        "date": ["ℂℂℂℂℂℂℂℂ", "ℂℂℂℂ/ℂℂ/ℂℂ", "ℂℂℂℂ年ℂℂ月ℂℂ日", "ℂℂℂℂ-ℂℂ-ℂℂ"],
        "payee": ["ℌ{2,6}"],
        "purchaser": ["ℌ{4,25}"],
        "purchaser_code": ["ℂ{14,19}ℇ"],
        "items": ["*ℌ{2,25}"],
        "price": ["ℂ{1,8}.ℂ{1,8}"],
        "amount": ["ℂ{1,8}", "ℂ{1,8}.ℂ{1,8}"],
        "money": ["ℂ{1,8}.ℂℂ"],
        "money_total": ["￥ℂ{1,8}.ℂℂ"],
        "money_chinese": ["℣{2,25}"],
        "check_code": ["ℂ{15,30}"]
    },
    "common": {
        "__代码": ["代码", "代码:"],
        "__号码": ["号码", "号码:"],
        "__日期": ["日期", "日期:"],
        "__时间": ["时间", "时间:"],
        "__金额": ["金额", "金额:", "￥", "价格", "价格:", "票价", "票价:"],
        "ticket_code": ["ℂ{12}"],
        "ticket_id": ["ℂ{8}"],
        "date": ["ℂℂℂℂℂℂℂℂ", "ℂℂℂℂ/ℂℂ/ℂℂ", "ℂℂℂℂ年ℂℂ月ℂℂ日", "ℂℂℂℂ-ℂℂ-ℂℂ"],
        "time": ["ℂℂ:ℂℂ", "ℂℂ:ℂℂ:ℂℂ"],
        "money": ["ℂ{1,5}", "ℂ{1,5}.ℂℂ", "ℂ{1,5}元", "ℂ{1,5}.ℂℂ元", "℣{2,15}"]
    }
}

special_handle = {
    "train_ticket": {
        "start": ("$train_number", 4, "concat_x"),
        "terminal": ("$train_number", 6, "concat_x")
    },
    "value_added_tax_invoice": {
        "purchaser_address_tel": ("__购方地址电话", (6, 9), "drop_illegal"),
        "purchaser_bank_account": ("__购方开户行及账号", (6, 9), "drop_illegal"),
        "saler_address_tel": ("__销方地址电话", (6, 9), "drop_illegal"),
        "saler_bank_account": ("__销方开户行及账号", (6, 9), "drop_illegal"),
        "payee": ("__收款人", 6, "drop_illegal"),
        "review": ("__复核", 6, "drop_illegal"),
    },
    "common": {
        "ticket_code": (["__代码", "__号码"], (3, 6, 7, 8, 9), "nearest"),
        "ticket_id": (["__号码", "__代码"], (3, 6, 7, 8, 9), "nearest"),
        "date": (["__日期", "__时间"], (3, 6, 7, 8, 9), "nearest"),
        "time": (["__时间", "__日期"], (3, 6, 7, 8, 9), "nearest"),
        "money": ("__金额", (3, 6, 7, 8, 9), "nearest"),
    }
}

output_handle = {
    "train_ticket": {
        "start": [("slice", "before", "站")],
        "terminal": [("slice", "before", "站")],
        "price": [("slice", "before", "元"),("slice", "after", "￥"),("insert", -1, ".")],
        "time": [("slice", "before", "开"), ("insert", -2, ":")],
    }
}
